// 基础URL定义
const BASE_URL = 'http://localhost:3002/api';

// 创建axios实例
const axios = require('axios');
const instance = axios.create({
  baseURL: BASE_URL,
  timeout: 5000,
  headers: {
    'Content-Type': 'application/json'
  }
});

// 添加课程接口
async function addCourse(courseData) {
  try {
    console.log('发送添加课程请求...');
    const response = await instance.post('/demo/addcourse', courseData);
    console.log('添加课程响应:', response.data);
    return response.data;
  } catch (error) {
    console.error('添加课程失败:', error.response?.data || error.message);
    console.error('详细错误:', error);
    throw error;
  }
}

// 主函数 - 仅测试添加课程功能
async function main() {
  try {
    // 使用测试用户ID 1（后端会跳过完整的token验证）
    const testUserId = 1;
    
    console.log('使用测试用户ID 1进行测试...');
    
    // 准备课程数据
    const courseData = {
      title: 'Vue.js从入门到精通_测试课程' + Date.now(),
      body: '这是一门测试课程，介绍Vue.js的基础知识和实战技巧。通过本课程的学习，你将能够掌握Vue.js的核心概念和开发方法，能够独立开发Vue.js应用。',
      teachername: '测试老师',
      startTime: new Date().toISOString(),
      endTime: new Date(Date.now() + 60 * 60 * 1000).toISOString(), // 默认1小时后结束
      categoryid: 349, // 根据update-userid.js文件中的信息，前端开发_测试类别的ID是349
      userid: testUserId, // 使用测试用户ID 1
      picPaths: null
    };
    
    console.log('准备添加的课程数据:', courseData);
    
    // 添加课程
    const newCourse = await addCourse(courseData);
    
    console.log('\n=== 发布课程成功 ===');
    console.log('课程ID:', newCourse.id);
    console.log('课程名称:', newCourse.title);
    console.log('发布者用户ID:', testUserId);
    console.log('\n课程发布功能测试完成！');
    
  } catch (error) {
    console.error('执行过程中出错:', error);
    process.exit(1);
  }
}

// 执行主函数
main();